# 学生管理v1函数封装
# 之前的非函数版本，打印学生列表代码重复，如果要修改需要处处修改， while if 嵌套，代码越来越长，不容易维护，所以我们封装成。函数封装将大问题分解成小问题，结构更清晰
student_list = ['小王','小红','小李']


def show_students():
    print('行号\t\t姓名')
    print('---------')
    for i in range(0,len(student_list)):
        print(i+1,student_list[i])
def add_student():
    student1 = input('请输入你要添加的姓名')
    student_list.append(student1)
    print('添加成功')
def update_student():
    print('选择你要修改学员的序号')
    for i in range(0, len(student_list)):
        print(i + 1, student_list[i])
    student2 = int(input('请输入你要修改学员的序号'))
    while student2 < 1 or student2 > len(student_list):
        student2 = int(input('输入错误，请重新输入:'))
    student3 = input('请输入修改后学员的姓名')
    student_list[student2 - 1] = student3
    for i in range(0, len(student_list)):
        print(i + 1, student_list[i])
    print('修改成功')
def delete_student():
        print('''  删除>请输入子操作编号
                1-选择要删除的学员的序号
                2-删除全部学员序号
        ''')
        student5=int(input('请输入子操作：'))
        if student5 == 1:
            student5 = int(input('选择·要删除第几个学生'))
            student_list.pop(student5-1)
            print('删除成功')
        elif student5 == 2:
            confirm = input('确认删除全部？（Y/N）')
            if confirm == 'Y' or confirm == 'N':
                student_list.clear()
                print()
def main():
        while True:
            print('''
            欢迎使用学生管理系统
            1-查询学员姓名
            2-添加学员姓名
            3-修改学员姓名
            4-删除学员姓名
            0-退出程序
            ''')

            num = int(input('请输入操作编号：'))

            if num == 1:
                show_students()
            elif num == 2:
                add_student()
            elif num == 3:
                update_student()
            elif num == 4:
                delete_student()
            elif num == 0:
                break

if __name__ == '__main__':  #这种写法含义将会在'包、模块'一块中介绍
    main()